﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ChongJu.ModelManager.HaiSheng
{
    public class QueryConfirmModel
    {
        public string ResponseCd { get; set; }

        /// <summary>
        /// 总页数（对应请求的总页数，值一样）
        /// </summary>
        public int TotalPage { get; set; }

        /// <summary>
        /// 当前页索引（对应请求的当前页索引，值一样）
        /// </summary>
        public int PageNum { get; set; }

        /// <summary>
        /// 当前烟农本次交烟的唯一标志
        /// </summary>
        public string UniqueFlag { get; set; }

        /// <summary>
        /// 收购线代码
        /// </summary>
        public string BuyLineCd { get; set; }

        /// <summary>
        /// 烟农微机号
        /// </summary>
        public string FarmerCd { get; set; }

        /// <summary>
        /// 数据包唯一标志（对应请求的数据包唯一标志，值一样）
        /// </summary>
        public string PackageFalg { get; set; }

        public ConfirmEntity Data { get; set; }
    }

    public class ConfirmEntity
    {
        /// <summary>
        /// 表示验证是否成功
        /// 值0 表示成功 
        /// 值1 表示失败
        /// </summary>
        public string aResult { get; set; }

        /// <summary>
        /// 表示错误代码
        /// 当aResult返回值为0，此处数值为0。
        /// 当aResult返回值为1，此处数据值1表示收购线代码不存在;
        /// 值2表示烟农不存在;
        /// 值3表示数据不存在;
        /// 值4表示数据未确认
        /// </summary>
        public string aErrorCode { get; set; }

        /// <summary>
        /// 表示确认明细
        /// 当aResult返回值为1，此处数值为[]。
        /// 当aResult返回值为0，此处数值为确认明细
        /// </summary>
        public List<ConfirmDetailEntity> BasketList { get; set; }
    }

    public class ConfirmDetailEntity
    {
        /// <summary>
        /// 定级等级代码（表示国标等级代码）
        /// </summary>
        public string LeafLevelCd { get; set; }

        /// <summary>
        /// 等级合计重量（格式为*.x 保留一位小数）
        /// </summary>
        public double Weight { get; set; }

        /// <summary>
        /// 等级合计金额（格式为*.xx 保留两位小数）
        /// </summary>
        public double Amount { get; set; }

        /// <summary>
        /// 等级合计金额（格式为*.xx 保留两位小数）
        /// </summary>
        public double Price { get; set; }

        /// <summary>
        /// 确认标识
        /// (如果同意交售，则字符串值为AGREE，如果不同意交售，则字符串值为REFUSE)
        /// </summary>
        public string ConfirmFlag { get; set; }
    }
}
